package com.codefarm.phone.mtsh.doctor.activity;

import android.app.ProgressDialog;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import com.codefarm.phone.mtsh.doctor.R;

import fay.frame.BaseActivity;

public class WebActivity extends BaseActivity {
	private WebView			webView;
	private String			adUrl;
	private ProgressDialog	pd;

	@Override
	protected void onCreate(Bundle arg0) {
		super.onCreate(arg0);
		this.setContentView(R.layout.activity_web_url);
		initView();
	}

	public void initView() {
		pd = ProgressDialog.show(WebActivity.this, null, "正在加载中...");
		pd.setCancelable(true);
		webView = (WebView) findViewById(R.id.webView);
		adUrl = getIntent().getStringExtra("ad");
		// 设置支持Javascript
		webView.getSettings().setJavaScriptEnabled(true);
		webView.setScrollBarStyle(0);
		WebSettings webSettings = webView.getSettings();
		// 启动缓存
		webSettings.setAppCacheEnabled(true);
		webSettings.setAllowFileAccess(true);
		webView.setWebViewClient(new webViewClient());
		webView.loadUrl(adUrl);
	}

	class webViewClient extends WebViewClient {
		// 重写shouldOverrideUrlLoading方法，使点击链接后不使用其他的浏览器打开。
		@Override
		public boolean shouldOverrideUrlLoading(WebView view, String url) {
			view.loadUrl(url);
			// 如果不需要其他对点击链接事件的处理返回true，否则返回false
			return true;
		}

		// 加载结束
		@Override
		public void onPageFinished(WebView view, String url) {
			pd.dismiss();
		}

		// 加载开始
		@Override
		public void onPageStarted(WebView view, String url, Bitmap favicon) {
			pd.show();
		}
	}

	/**
	 * 按键响应，在WebView中查看网页时，按返回键的时候按浏览历史退回,如果不做此项处理则整个WebView返回退出
	 */
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) {
			// 返回键退回
			// webView.goBack();
			finish();
			return true;
		}
		return super.onKeyDown(keyCode, event);
	}
}
